package com.sunspring.zdcall.dto;

import com.sunspring.zdcall.util.TimeUtil;
import lombok.Data;

import java.util.Date;

/**
 * webSocket推送新患者dto
 * @Author WuLei
 * @Date 2018/11/29  15:16
 */
@Data
public class QueueDto {


    /**
     * 排队号
     */
    private String queueId;

    /**
     * 患者姓名
     */
    private String patientName;

    /**
     * 患者性别
     */
    private String patientSex;

    /**
     * 患者年龄
     */
    private String patientAge;

    /**
     * 检查ID
     */
    private String inspectId;

    /**
     * 影像号
     */
    private String imageNumber;

    /**
     * 科室名称
     */
    private String department;

    /**
     * 科室ID
     */
    private String departmentId;

    /**
     * 检查室名称
     */
    private String checkRoom;

    /**
     * 检查室ID
     */
    private String checkId;

    /**
     * 检查室显示名称
     */
    private String checkRoomDisplayName;

    /**
     * 前方等待就诊人数
     */
    private int waitPatientNumber;

    /**
     * 检查类别
     */
    private String className;

    /**
     * 登记时间
     */
    private Date checkInTime;

    /**
     * 来源（住院，门诊，急诊）
     */
    private String cliisinpat;

    /**
     * 检查状态
     */
    private int checkStatus;

    /**
     * 确认就诊时间
     */
    private Date confirmTime;

    /**
     * 序列化后的注册时间
     */
    private String registerTime;

    /**
     * 序列化后的确认就诊时间
     */
    private String finalConfirmTime;

    /**
     * 病人来源（1-住院部 2-门诊）
     */
    private String callType;

    /**
     * 检查部位
     */
    private String partOfCheck;
    /**
     * 打印状态
     */
    private int printStatus;

    /**
     * HIS编号
     */
    private String HISId;

    /**
     * IC卡号
     */
    private String icCardNo;

    /**
     * 住院号
     */
    private String inHospitalNo;

    /**
     * 门诊号
     */
    private String clinicNo;

    /**
     * 申请医生  LODGEDOCTOR
     */
    private String lodgeDoctor;

    /**
     * 申请科室  LODGESECTION
     *
     */
    private String lodgeSection;

    /**
     * 出生日期
     */
    private String birthdate;

    /**
     * 检查项目
     */
    private String direction;

    //保留字段
    private Object yl1;

    private Object yl2;

    public int getPrintStatus() {
        return printStatus;
    }

    public void setPrintStatus(int printStatus) {
        this.printStatus = printStatus;
    }

    public String getQueueId() {
        return queueId;
    }

    public void setQueueId(String queueId) {
        this.queueId = queueId;
    }

    public String getPatientName() {
        return patientName;
    }

    public void setPatientName(String patientName) {
        this.patientName = patientName;
    }

    public String getPatientSex() {
        return patientSex;
    }

    public void setPatientSex(String patientSex) {
        this.patientSex = patientSex;
    }

    public String getPatientAge() {
        return patientAge;
    }

    public void setPatientAge(String patientAge) {
        this.patientAge = patientAge;
    }

    public String getInspectId() {
        return inspectId;
    }

    public void setInspectId(String inspectId) {
        this.inspectId = inspectId;
    }

    public String getImageNumber() {
        return imageNumber;
    }

    public void setImageNumber(String imageNumber) {
        this.imageNumber = imageNumber;
    }

    public String getDepartment() {
        return department;
    }

    public void setDepartment(String department) {
        this.department = department;
    }

    public String getDepartmentId() {
        return departmentId;
    }

    public void setDepartmentId(String departmentId) {
        this.departmentId = departmentId;
    }

    public String getCheckRoom() {
        return checkRoom;
    }

    public void setCheckRoom(String checkRoom) {
        this.checkRoom = checkRoom;
    }

    public String getCheckId() {
        return checkId;
    }

    public void setCheckId(String checkId) {
        this.checkId = checkId;
    }

    public String getCheckRoomDisplayName() {
        return checkRoomDisplayName;
    }

    public void setCheckRoomDisplayName(String checkRoomDisplayName) {
        this.checkRoomDisplayName = checkRoomDisplayName;
    }

    public int getWaitPatientNumber() {
        return waitPatientNumber;
    }

    public void setWaitPatientNumber(int waitPatientNumber) {
        this.waitPatientNumber = waitPatientNumber;
    }

    public String getClassName() {
        return className;
    }

    public void setClassName(String className) {
        this.className = className;
    }

    public Date getCheckInTime() {
        return checkInTime;
    }

    public void setCheckInTime(Date checkInTime) {
        this.checkInTime = checkInTime;
        this.setRegisterTime(TimeUtil.format(checkInTime));
    }

    public int getCheckStatus() {
        return checkStatus;
    }

    public void setCheckStatus(int checkStatus) {
        this.checkStatus = checkStatus;
    }

    public Date getConfirmTime() {
        return confirmTime;
    }

    public void setConfirmTime(Date confirmTime) {
        this.confirmTime = confirmTime;
        if (confirmTime != null){
            this.finalConfirmTime = TimeUtil.format(confirmTime);
        }
    }

    public String getRegisterTime() {
        return registerTime;
    }

    public void setRegisterTime(String registerTime) {
        this.registerTime = registerTime;
    }

    public String getFinalConfirmTime() {
        return finalConfirmTime;
    }

    public void setFinalConfirmTime(String finalConfirmTime) {
        this.finalConfirmTime = finalConfirmTime;
    }

    public String getCallType() {
        return callType;
    }

    public void setCallType(String callType) {
        this.callType = callType;
    }

    public String getPartOfCheck() {
        return partOfCheck;
    }

    public void setPartOfCheck(String partOfCheck) {
        this.partOfCheck = partOfCheck;
    }

    public long checkInTime() {
        Date date = checkInTime;
        return date.getTime();
    }

    public String getHISId() {
        return HISId;
    }

    public void setHISId(String HISId) {
        this.HISId = HISId;
    }

    public String getIcCardNo() {
        return icCardNo;
    }

    public void setIcCardNo(String icCardNo) {
        this.icCardNo = icCardNo;
    }

    public String getInHospitalNo() {
        return inHospitalNo;
    }

    public void setInHospitalNo(String inHospitalNo) {
        this.inHospitalNo = inHospitalNo;
    }

    public String getClinicNo() {
        return clinicNo;
    }

    public void setClinicNo(String clinicNo) {
        this.clinicNo = clinicNo;
    }

    public String getLodgeDoctor() {
        return lodgeDoctor;
    }

    public void setLodgeDoctor(String lodgeDoctor) {
        this.lodgeDoctor = lodgeDoctor;
    }

    public String getLodgeSection() {
        return lodgeSection;
    }

    public void setLodgeSection(String lodgeSection) {
        this.lodgeSection = lodgeSection;
    }

    public String getBirthdate() {
        return birthdate;
    }

    public void setBirthdate(String birthdate) {
        this.birthdate = birthdate;
    }

    public String getDirection() {
        return direction;
    }

    public void setDirection(String direction) {
        this.direction = direction;
    }

    public Object getYl1() {
        return yl1;
    }

    public void setYl1(Object yl1) {
        this.yl1 = yl1;
    }

    public Object getYl2() {
        return yl2;
    }

    public void setYl2(Object yl2) {
        this.yl2 = yl2;
    }
}
